package services.common;

import java.util.Date;
import java.util.List;
import java.util.Map;

import models.common.entity.t_industry_type;
import services.base.BaseService;

import common.utils.Factory;
import common.utils.PageBean;
import common.utils.ResultInfo;

import daos.common.IndustryTypeDao;


/**
 * 行业类型service
 *
 * @description 
 *
 * @author zhiliang.lan
 * @createDate 2017年5月19日14:53:34
 */
public class IndustryTypeService extends BaseService<t_industry_type>{
	
	protected IndustryTypeDao industryTypeDao = null;
	
	protected IndustryTypeService() {
		this.industryTypeDao = Factory.getDao(IndustryTypeDao.class);
		
		super.basedao = this.industryTypeDao;
	}
	
	/**
	 * 分页查询所有的行业类型
	 * @param currPage 当前第几页
	 * @param pageSize 每页显示的数据量
	 * @return
	 * @author zhiliang.lan
	 * @createDate 2017年4月18日
	 */
	public PageBean<t_industry_type> showAllIndustryType(int currPage, int pageSize, String industryTypeName) {
		
		return	industryTypeDao.pageOfIndustryType(currPage, pageSize ,industryTypeName);
	}

	/**
	 * 保存新增
	 * @param industryType
	 * @return
	 * @author zhiliang.lan
	 * @createDate 2017年5月19日15:02:20
	 */
	public ResultInfo addIndustryType(t_industry_type industryType) {
		ResultInfo result = new ResultInfo();
		
		industryType.time = new Date();
		boolean flag = industryTypeDao.save(industryType);
		if (!flag) {
			
			result.code = ResultInfo.ERROR_SQL;
			result.msg = "系统错误";	
			
			return result;
		} 
		
		result.code = 1;
		result.msg="行业类型添加成功!";
		result.obj = industryType;
		
		return result;
	}

	
	/**
	 * 更新名称  简介
	 * @param id
	 * @param name
	 * @param info
	 * @return
	 * @author zhiliang.lan
	 * @createDate 2017-5-19 15:05:16
	 */
	public ResultInfo updateIndustryType(long id, String name, String info) {
		
		ResultInfo result = new ResultInfo();
		
		t_industry_type industryType = industryTypeDao.findByID(id);
		
		industryType.name = name;
		industryType.info = info;
		industryType.time =new Date();
		
		boolean flag = industryTypeDao.save(industryType);
		if (!flag) {
			result.code = ResultInfo.ERROR_SQL;
			result.msg = "系统错误!";

			return result;
		}
		
		result.code = 1;
		result.msg = "行业类型名称、简介已经更新";
		
		return result;
	}

	/**
	 * 根据userId查询企业类型
	 * @param userId
	 * @return
	 * @author zhiliang.lan
	 * @createDate 2017年4月18日
	 */
	public t_industry_type findIndustryTypeByUserId(long userId) {
		
		return industryTypeDao.findIndustryType(userId);
	}

	/**
	 * 查询所有行业类型的list
	 * @return
	 * @author zhiliang.lan
	 * @createDate 2017年5月19日15:07:21
	 */
	public List<t_industry_type> findAllIndustryType() {
		
		return industryTypeDao.findAll();
	}

	/**
	 * 查询所有行业列表  -app
	 * 
	 * @return
	 * @author zhiliang.lan
	 * @createDate 2017年7月31日
	 */
	public List<Map<String, Object>> findAllIndustryTypeApp() {
		
		return industryTypeDao.findAllIndustryTypeApp();
	}


	
	
}
